Imaging devices, such as scanning devices and digital cameras, generate machine-readable image data (sometimes referred to simply as image data) representative of an image of an object. One example of an object is a document having text printed thereon. In some scanning devices, the document is set on a platen and image data is generated by a carriage moving relative to the platen within the scanning device. The carriage has devices located therein that generate image data representative of an image of the object located on the platen. The process of generating image data representative of an image of the object is sometimes referred to as scanning the object. In other scanning devices, the document is placed into an automatic document feeder and then moved past a stationary component, such as a stationary carriage, that scans the document. Digital cameras, on the other hand, generate image data by focusing the image onto a two-dimensional photosensor device that generates image data without the need for moving a carriage.
The image data is typically transmitted to a viewing device that replicates the image of the scanned object based on the image data. For example, the viewing device may be a video monitor that processes the image data to display the image of the object. In another example, the viewing device may be a printer that processes the image data to print an image of the object.
The viewing devices have reference axes that a user references when viewing displayed or printed images. For example, in the situation where the viewing device is a video monitor, the user may establish a horizontal axis of the top or bottom edge of the video monitor. In the situation wherein the object is text, the text is expected to be displayed parallel to the horizontal axis. In the situation where the display device is a printer, the reference axis may be a horizontal or vertical edge of the printed paper.
If the image has features that the reader expects to be horizontal or vertical and they are skewed relative to the horizontal or vertical axis, the image may be difficult to interpret. For example, if the text in a document is not parallel to the horizontal axis or is not perpendicular to the vertical axis, the text may be difficult to read. Furthermore, an optical character recognition engine will likely be unable to recognize the skewed characters.
Various factors in the scanning process may cause the displayed image to be skewed. For example, if a document set on the platen of a scanner is skewed, the resulting image will be skewed. Likewise, if a document becomes skewed as it is passed by a carriage in a scanner, the resulting image will be skewed. In the situation where the imaging device is a digital camera, the user may tilt the camera during the period which the image data is generated. This tilting will cause the resulting image to be skewed.